package cn.tedu.submarine;

import javax.swing.*;

/**
 * 水雷潜艇类
 * @author XingHaiYang
 * @date 2022/8/27 15:15
 */
public class MineSubmarine extends SeaObject implements EnemyLife {
    /**
     * 水雷潜艇的构造方法
     */
    public MineSubmarine() {
        super(63, 19);
    }

    /**
     * 实现SeaObject中的获取图片的抽象方法getImage()
     * @return 返回水雷潜艇图片
     */
    @Override
    public ImageIcon getImage() {
        return Images.minesubmarine;
    }

    /**
     * 水雷潜艇移动
     */
    @Override
    public void move() {
        x += speed; //x+(向右)
    }

    /**
     * 水雷潜艇发射水雷的方法
     * @return 水雷对象
     */
    public Mine shootMine(){
        int x = this.x+this.width; //x:水雷潜艇的x+水雷潜艇的宽
        int y = this.y-5;          //y:水雷潜艇的y-固定的5
        return new Mine(x,y); //返回水雷对象
    }

    /**
     * 实现命接口，重写getLife()得命
     * @return 返回得到的命数
     */
    @Override
    public int getLife() {
        return 1; //打掉水雷潜艇，得1条命
    }
}
